Dynamic RF matrix emulator

ABSTRACT

A dynamic RF matrix emulator uses digital switching to emulate the switching behavior of hundreds of wireless terminals. The emulator includes a switching matrix with channels formed between terminal pairs, digital front ends for coupling terminals digitally to the switching matrix, and a channel database having entries representing attenuation values which can be changed in time, the attenuation values correlated with movement of vehicles provided by a traffic simulator. Channel behavior is defined by temporal attenuation values obtained from the database. The digital switching is controlled through a digital communication protocol.

CROSS REFERENCE TO RELATED APPLICATIONS

This invention claims priority from U.S. Provisional Patent ApplicationNo. 61/152,272 filed 13 Feb. 2009, the content of which is incorporatedherein by reference.

FIELD OF THE INVENTION

The invention disclosed herein relates in general to testing of wirelessnetworks or devices and more specifically to systems and methods foremulating wireless networks with large numbers of radio frequency (RF)units (also referred to as “RF terminals”).

BACKGROUND OF THE INVENTION

The task of testing wireless networks or devices containing many RFterminals (“terminals”) imposes great challenges. Any two terminals cancommunicate through a wireless communication channel. As opposed tocellular phone testing, in which the communication is limited between aterminal and a centralized base-station, the requirement here is forfull switching between all terminals. In the case of mobile terminals(for example installed in vehicles) where communication channelsexperience temporally and spatially changing environments, such testingbecomes even more challenging. A terminal may also be referred to as“device under test” (DUT).

RF emulators can support, at very high cost, RF switching between a verylimited number of terminals, but cannot provide full matrix switchingfor large numbers of terminals. The number of required terminal pairsfor N terminals, assuming half-duplex operation, is (N−1)². For example,3 terminals require 4 pairs, 100 terminals require 9801 pairs, and 200terminals require 39,601 pairs for full switching. There is no RF-basedimplementation (RF channel based testing) that can come even close toemulate such large networks. Known RF channel based testing does notconsider the location of terminals and the variation in such location.Switching is typically set once throughout a test period, meaning theterminals are considered fixed.

In view of the inherent limitations of known RF-based emulators whichuse RF based channel testing, there is a need for and it would beadvantageous to have RF emulation systems and methods capable ofhandling networks with many (e.g. hundreds of) terminals.

SUMMARY OF THE INVENTION

The invention discloses a dynamic RF matrix emulator (“emulator”) usedto validate behavior and test overall performance of large wirelessnetworks, which may include hundreds of wireless terminals. In someembodiments, the terminals may be mobile (as in vehicles). A mobileterminal's location may change during a test period, varying theattenuation in the channel between it and another terminal. In oneaspect different from that of known art, a dynamic RF matrix emulator ofthe invention uses digital switching instead of RF switching. In thisdescription, “digital switching” involves the use of a digital protocol(e.g. an Ethernet-like protocol defined by IEEE802.3) to frame the datatransferred between a terminal and the switching matrix. Note that theEthernet-like protocol is used for example only, and that many otherdigital protocols may be used for the digital switching of theinvention. “Dynamic” refers to temporally-changing assignations ofdatabase entries representing channel attenuation to a channel. It alsorefers to the switching matrix, in the sense that it can be changedduring testing and in real-time.

According to the invention, there is provided an apparatus for testingwireless terminals comprising a switching matrix coupled through a firstplurality of M digital front end modules to a second plurality of N RFterminals, the switching matrix having channels and a channel databasefor providing temporal channel attenuation data, wherein the switchingmatrix, the terminals and the channel database are interconnecteddigitally and wherein the channel attenuation data is used for settingswitching decisions.

In an embodiment, M is equal to N

In an embodiment, M is not equal to N.

In an embodiment, the channel database includes a storage element forstoring database entries which represent channel attenuation values (orsimply “channel attenuation”), a loading interface for enabling loadingof the database entries into the storage element, a synchronizationcontrol element which serves as a timing element for controlling acurrent database entry and a retrieval interface for providing a currentdatabase entry to a channel.

In an embodiment, each database entry is based on a current terminallocation.

In an embodiment, the switching matrix includes M input parameterextractor modules used for parsing an incoming bit stream to obtain atransmitted power and data rate, and M output selector modules used forselecting data received from transmitters and for digitally connectingthe terminals.

In an embodiment, N>3.

In an embodiment, the digital interconnection is enabled by use of adigital connectivity protocol.

In an embodiment, the terminals are mobile.

In an embodiment, the digital connectivity protocol is the IEEE 802.3protocol.

In an embodiment, a terminal includes a plurality of physical layer(PHY) modem chains.

According to the invention, there is provided an apparatus for testingwireless terminals comprising a switching matrix digitally connectableto a plurality of RF terminals and temporally configurable with digitalchannel attenuation values, the switching matrix operative todynamically provide switching decisions.

In an embodiment, the switching matrix is digitally connectable using adigital communication protocol.

In an embodiment, the digital attenuation values are based on a channelmodel. According to the invention, there is provided a method fortesting wireless RF terminals comprising the steps of providing adynamic RF matrix emulator which includes a switching matrix, a channeldatabase and M digital front ends; connecting N terminals throughrespective digital front ends across the switching matrix, a connectionbetween two terminals forming a channel; and emulating the behavior ofterminals through digital switching of the switching matrix to setswitching decisions.

In an embodiment, the step of emulating includes providing temporallychanging attenuation values per channel.

In an embodiment, the method further comprises the step of preparing thechannel database offline.

In an embodiment, the step of preparing the channel database offlineincludes using a driving simulator to provide locations of terminals anda surrounding map, calculating a channel model to obtain a currentdatabase entry for a channel, the entry including an attenuation value,quantizing the attenuation value to a quantized attenuation value, andwriting the quantized value to a storage element in the channeldatabase.

In an embodiment, the quantizing includes using a maximal quantizationstep less than half the minimum sensitivity of a terminal PHY modem.

In an embodiment, the step of emulating includes identifying terminalswith a winner transmitter and a runner up transmitter, and comparing adifference in receive powers of the winner and runner up transmitterswith a threshold to determine a switching decision.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the present invention and to show moreclearly how it could be applied, reference will now be made, by way ofexample only, to the accompanying drawings in which:

FIG. 1 shows an embodiment of an apparatus for testing wireless networksor devices according to the invention;

FIG. 2 shows the main steps of a method for testing wireless networks ordevices according to the invention;

FIG. 3 shows details of a channel database in the apparatus of FIG. 1;

FIG. 4 shows details of a switching matrix in the apparatus of FIG. 1;

FIG. 5 provides details of a real-time emulation run;

FIG. 6 describes a channel database creation process in a method of theinvention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 shows an embodiment 100 of a dynamic RF emulator according to theinvention. The description is given in detail for moving terminals, forexample positioned in vehicles. However, it should be understood thatthe description is equally valid for cases in which some or all of theterminals are static. One inventive aspect of a dynamic RF emulator ofthe invention is that its concept of operation is based on digitalswitching instead of RF switching. That is, the emulation uses digitalsignals instead of (analog) RF signals to perform basic RF channelemulation in a digital manner. This is in contrast with known art, e.g.that disclosed in U.S. Pat. No. 7,349,670. Further in contrast witharchitectures and methods based on RF signal switching, the digitalswitching is changed based on configuration, using known current vehicle(terminal) locations and channel attenuations calculated from a RFchannel model. Channel models which can be used in the invention areknown, see e.g. Mary Ann Ingram, “Six time and frequency selectiveempirical channel models for vehicular wireless LANs”, IEEE VehicularTechnology Conference, Fall 2007. The location of the terminals, whichchanges with time following a vehicle driving model, is considered inthe channel properties. Driving models which can be used in theinvention are known. Such models model usually traffic in a real city,see for example the iTetris project, which simulated the entire city ofBologna, Italy with “Sumo”.

Emulator 100 includes a dynamic switching matrix 102, a plurality of Ndigital front ends 104-1 to 104-n and a channel database 106,interconnected as shown. Emulator 100 may be connected through a digitalfront end 104 to a RF terminal 108. FIG. 1 shows N terminals 108-1 to108-n, connected to N digital front ends 104-1 to 104-n In general, thenumber of terminals may be different from the number of front ends. Thatis, while each terminal must have a front end partner in the switchingmatrix, a front end may be unconnected to a terminal when the switchingmatrix is not fully populated.

Matrix 102 provides switching between all terminal pairs during anemulation “run” (done in real-time or “online”). That is, matrix 102 canconnect any terminal to any other terminal through a channel to provideup to (N−1)² emulated channels. As mentioned, in the particular examplewhere N=200, there are 199² possible emulated channels. The switching iscontrolled digitally, for example by a computer (e.g. PC). The computeralso loads information to the channel database. Channel database 106 andswitching matrix 102 are described in more detail with reference to,respectively, FIG. 3 and FIG. 4. Each terminal 108-1 to 108-n includesat least one PHY modem 110-1 to 110-n. The PHY functionality is annulledand not tested during the emulation, but its performance parameters,such as a threshold of detecting data from noise, are carefullyemulated. All other terminal elements are tested without anymodification. Optionally, one may replace the digital front ends 104with complete PHY modems, and not bypass them. In this case, an RF cablemust be used to connect two terminals, and the number of terminals wouldbe limited due to size constraints.

The channel database is a database of temporal (time-varying) channelattenuation values for all channels and is prepared for a specificemulation scenario. The attenuation values may be obtained in a pre-run,offline procedure, using a channel model. Each RF channel is consideredto be semi-static, as configured in the channel database. Optionally,one may define a RF channel to be fully dynamic, although the increasedcomplexity will likely not justify the gain from the increased emulationaccuracy.

The channel model calculation is performed periodically. For example,the channel model for any time between 0 and 100 msec will be fixed ifthe channel model period is set to 100 msec. For each database entry, achannel acts (has one type of behavior in terms of attenuationproperties) in a fixed manner. For example, a channel acts one way for adatabase entry of 40 dB attenuation and another way for a database entryof 44 dB attenuation.

The digital front ends connect the emulator to respective terminals in adigital manner. The move to digital switching, instead of RF switching,allows scale-up of the operation and can support a very high number ofterminals (e.g. 200 terminals as in the example above), providing onesignificant advantage of the invention over RF switching basedemulations.

FIG. 2 shows the main steps of an emulation method according to theinvention. A pre-run process of building the channel database entries isperformed once for each driving scenario in step 200. This processresults in calculated attenuation values for all channels. These valuesare loaded to the emulator channel database in step 202. A digitalemulation in real-time is then performed by the emulator in step 204.The emulation enables multiple terminals to communicate with each otheras if those terminals were driving in a designed driving scenario, byproviding switching decisions.

In case of a driving scenario with a small number of vehicles and veryhigh computational capacity, the pre-run processing might be shorterthan an update period (100 msec for example). In this case, real-timeoperation of steps 200 and 202 is possible, avoiding the need for apre-run.

FIG. 3 shows a block diagram which provides details of channel database106. The channel database includes a storage element 302 for storingdatabase entries; a loading interface 304 for interfacing the channeldatabase with a driving simulator software 310 and for enabling loadingof the database entries into the storage element; a synchronizationcontrol element 306, which serves as a timing element for controllingthe database entry in use (also referred to as “current database entry”)and for providing an emulation “begin” event for achieving networksynchronization of all the terminals connected to the matrix (from,exemplarily, a GPS location file 312); and a retrieval interface 308 forproviding the current database entry to each channel.

The amount of memory in the storage element should suffice for therequired operation. For example, there may be a requirement to store atotal of 200M channels to support 1000 seconds of emulation in a 200terminal network while updating a database entry every 100 msec, and forthe switching matrix to switch 39601 channels.

The following example is given to illustrate the need forsynchronization control. In an exemplary vehicular communicationapplication, a new database entry is retrieved once every 100 msec, toproperly reflect vehicle movement. The timing element must synchronizethe emulation start with other testing operations (such as file readingto provide an input). For example, side information, such as GPSlocation, should match precisely the present channel attenuation valueobtained from the channel database entry. To achieve that, the elementdistributing the GPS information (e.g. GPS location file 312) should besynchronized with the channel database.

Switching matrix 102 is described in more detail with reference to FIG.4. The switching matrix includes M input parameter extractor modules402-1 to 402-m and M output selector modules 404-1 to 404-m,interconnected as shown. Each extractor module can parse specific fieldsfrom a bit stream. Each selector module can select the data received byits respective receiver from all transmitters. FIG. 4 shows that eachmodule 402 is connected to each module 404. The interconnection schemeis shown for 3 terminals for simplification (and in this case, M=N=3).The interconnection of N>3 terminals would be similar. The parameterextractor modules receive input streams from respective front ends 104-1to 104-n. Each input stream includes a transmitted RF power level and adata rate in addition to data. The transmitted data rate is included inan IEEE 802.11 packet header, so it can be parsed from the packet. Theinformation on the power level is not part of the header, and it has tobe added artificially to the data stream to identify the transmittedpower for later calculations. This can be done for example by having thetransmitter add a byte before the original data stream, the added byterepresenting the transmitted power. The added byte is removed by theparameter extractor module and does not reach the destination terminals.

The switching matrix can support single RF channel switching or multipleRF channel switching. “Multiple channels” implies multiple bit streams.“Multiple” also refers to more than one PHY modem chain in a terminal.In multiple RF channel switching, one digital front end handles morethan one channel, i.e. multiplexes two channels on the same interface.That is, the switching element is duplicated, with two output selectormodules.

The parameter extractor modules parse the side information (i.e. theadded byte mentioned above) and determine if a terminal transmitter isactive or not. The determination of whether the transmitter is active orinactive depends on the digital protocol used between the terminals andthe matrix. For example, for an Ethernet-like protocol, thedetermination relies on Ethernet commas to indicate an idle channel.

The switching needs to consider the data rate. Wireless protocols havethe ability to support various data rates. For example, if the emulationuses the IEEE 802.11p protocol, the data rate can vary between 3 Mbps to27 Mbps. The emulator supports switching at all the potential rates ofthe RF transmission power. The data rate indication may be in-band orout-of-band of the data stream. Each selector module determinesindependently of others if a respective output port of selector modules404-1 to 404-m is idle, if it receives data from a specific input port,or if its faces a collision, implying reception of corrupted data.“Corrupted data” may be any data that does not represent a legal packet.For example, it can be a packet with a bad CRC (bad validity indication)or one using error codes with an Ethernet-like protocol. The outputselectors use the current attenuation value for the emulated channelderived from database. This value is provided by a respective databaseentry in the channel database.

The switching matrix includes a plurality of parallel decision units(selector modules 404) to achieve a fast decision time. The timerequired for complete scanning of all terminals, which could number inthe hundreds, should be shorter than a carrier sense delay of a deviceunder test (DUT), which is on the order of 2-3 μsec for 802.11p devices.

FIG. 5 provides details of a real-time emulation run (step 204). In step500, the parameter extractor modules wait until a transmitter becomesactive. When a transmitter becomes active, the extractor modules becomeactive and in step 501 provide the rate and transmitted power of theactive transmitter. The receive power of a receiver (equal to thetransmit power—attenuation) is calculated in step 502. The calculationis performed by subtracting the attenuation, taken from the channeldatabase, from the transmitted power. The transmitter with the strongestreceive power (also referred to as “winner”) is selected in step 506.The transmitter with the second strongest receive power (also referredto as “runner up”) is selected in step 508 by a respective outputselector module.

In step 510, the power of the winner is compared with a noise threshold.The noise threshold indicates the ability of the receiver to detect thesignal, and is determined by standardization. It is fixed for allmodulations, and for example in IEEE 802.11p is set to −85 dBm. Anytransmission below the noise threshold, which causes a NO selection instep 510, will cause idle transmission in step 516. This functionalityemulates carrier sense.

In step 512, the difference between the power of the winner and thepower of the runner up is compared with a “reception” threshold per datarate of the winner (which is a configurable threshold determined basedon the PHY modem. For example, a 802.11p PHY modem has a knownperformance per each data rate. If the comparison indicates aninsufficient power difference (i.e. lower than the threshold), then acorrupted data stream is transmitted in step 520. Otherwise, a secondcheck is performed in step 514. In this check, the difference betweenthe power of the winner minus the channel attenuation and the receivepower of the winner of an adjacent channel is compared with an “adjacentchannel rejection” threshold, which is set per data rate of the winner(for example, 16 dB for QPSK and 19 dB for BPSK). This thresholdindicates the level of rejection, which is typically 16 dB, but whichcan be enhanced to 32 dB. In case of interference from an adjacentchannel, as indicated by a NO in step 514, a corrupted data stream istransmitted in step 620. Otherwise, data is transmitted correctly fromthe winner to the terminal associated with the respective selectormodule in step 518.

The actions in steps 516, 518 and 520 continue until the conditions ofeither step 500 or 504 are met. That is, they continue until a newtransmitter becomes active, or until one of the active transmittersbecome inactive. The check of the latter case is performed in step 504.A check if any transmitter is active is performed in step 505 as acondition for advancing to step 506. If no transmitter is active, theoperation waits in step 500 until a transmitter becomes active.

The comparison of only two transmitters (a winner and a runner up) todetermine if the winner should be received correctly by the terminalassociated with the respective selector module reduces significantly thecomplexity of operation. However, such comparison is optional, and onemay alternatively sum up the receive powers of all runner ups. Note alsothat in steps 500 and 504 the operation is performed only when atransmitter state changes from active or inactive, instead of using acomparison per bit. In an alternative embodiment, steps 500 and 504 maybe optional, and one may perform comparison per bit instead.

The process of preparing the channel attenuation database (step 200) isdescribed in more detail with reference to FIG. 6. A microscopic drivingsimulator (which describes precisely the location of each vehicle, (see.e.g. the “Sumo” simulator developed by the German Aerospace Center)provides the location of all emulated terminals and a surrounding map instep 600. In step 602, the RF channel model is calculated for eachchannel. The RF channel model considers the distance between theterminals and physical obstructions (line-of-sight in case of noobstruction, and non-line-of-sight otherwise). In step 604, the channelattenuation obtained from a channel database entry is quantized to asmall number of bits (e.g. to bits having a resolution of 4 dB). Thequantization combines the ability to perform power-based decisions withthe simplification of the decision process. The maximal quantizationstep is preferably less than half of minimum sensitivity of a PHY modem,which represents the ability of the modem to correctly distinguishsignals from noise. For example, the use of 4 dB resolution quantizationsteps is driven by a 8 dB threshold.

The quantized values are written in step 606 to storage element 302using loading interface 304. In step 608, a check is performed to see ifthe driving simulation scenario ended. If yes, the operation iscompleted, and step 202 of loading the database may begin If not,operation is repeated from step 300.

EXAMPLES

An example for a switching decision is provided for a single output andfor just 16 inputs. The full matrix repeats this calculation for alloutputs and hundreds on inputs. The attenuation vector (database entryfor an output selector) is as follows: {Open, 8 dB, 16 dB, 16 dB, 8 dB,Open, Open, Open, 32 dB, 32 dB, 8 dB, Open, Open, 24 dB, Open, Open}.

Assume that the list of the current state of all transmitters, decidedin an arbitrary fashion based on current transmissions of terminalsusing a procedure as in FIG. 5 step 500, is {10 dBm, No, No, No, No, No,20 dBm, No, No, 10 dBm, No, No, No, No, No, No}. The listed valuesindicate transmitter power. In this list, there are 3 activetransmitters (#1, 7 and 10). Of these, the channels of 1^(st) and 7^(th)transmitters are open and not impacting. Therefore, the 10^(th)transmitter is the only one considered and transmitted as is if itspower is higher than the SNR.

If the 4^(th) input suddenly starts to transmit using 10 dBm outputpower, then it is stronger than the existing 10^(th) input transmission,because the 4^(th) input has 16 dB attenuation while the 10^(th) inputhas 32 dB attenuation. This means that a 16 dB SNR is required tocorrectly receive the data. If the modulation requires less than a 16 dBreception threshold, such as QPSK, then the 4^(th) input (with the lowerattenuation) will be transmitted as is. If the reception threshold ishigher, for example for QAM64, then corrupted data will be transmitted.

An example for channel database preparation is provided for twovehicles. Real-life examples manage a significantly higher number ofvehicles, and the same rules explained here are repeated for allvehicles in the environment. Assume that the two vehicles drive inopposite directions on the same road, each at a speed of 90 km/h. Theinitial distance is 1000 meters. At this distance, there is noconnectivity channel between the two vehicles, i.e. the attenuation istoo high to allow signal detection, and the database entries indicate noconnection (using for example a special “open” flag). After 4 seconds,the distance between the vehicles is 800 meters, and the attenuation isvery high, around 90 dB. Assume that the channel database updates every100 msec. During this period, the distance between the two cars isreduced by 5 meters and the new channel attenuation is calculatedaccording to the new (current) distance. The calculation is valid forthe entire 100 msec, meaning all the locations of the vehicles between800 and 795 meters apart will have the same attenuation. Based on theused channel model, the closer the vehicles get, the lower theattenuation. When the vehicles get to be very close, the attenuation isminimal, and can reach for example 30 dB. After that, the vehicles passeach other, continue to drive in the opposite direction, and thedistance between them increases, increasing the attenuation accordingly.

All publications, patents and patent applications mentioned in thisspecification are herein incorporated in their entirety by referenceinto the specification, to the same extent as if each individualpublication, patent or patent application was specifically andindividually indicated to be incorporated herein by reference. Inaddition, citation or identification of any reference in thisapplication shall not be construed as an admission that such referenceis available as prior art to the present invention.

While the invention has been described with respect to a limited numberof embodiments, it will be appreciated that many variations,modifications and other applications of the invention may be made.

The invention claimed is:
 1. An apparatus for testing wireless terminalscomprising: a) a switching matrix coupled through a first plurality of Mdigital front end modules to a second plurality of N radio frequency(RF) terminals, the switching matrix having channels; and b) a channeldatabase for providing temporal channel attenuation data, wherein thechannel database includes: i. a storage element for storing databaseentries which represent channel attenuation values, ii. a loadinginterface for enabling loading of the database entries into the storageelement, iii. a synchronization control element which serves as a timingelement for controlling a current database entry, and iv. a retrievalinterface for providing a current database entry to a channel; whereinthe switching matrix, the terminals and the channel database areinterconnected digitally and wherein the channel attenuation data isused for setting switching decisions.
 2. The apparatus of claim 1,wherein M is equal to N.
 3. The apparatus of claim 2, wherein a databaseentry is based on a current terminal location.
 4. The apparatus of claim1 wherein M is not equal to N.
 5. The apparatus of claim 1, wherein N>3.6. The apparatus of claim 5, wherein the digital connectivity protocolis the IEEE 802.3 protocol.
 7. The apparatus of claim 1, wherein thedigital interconnection is enabled by use of a digital connectivityprotocol.
 8. The apparatus of claim 1, wherein the terminals are mobile.9. The apparatus of claim 1, wherein a terminal includes a plurality ofPHY modem chains.
 10. An apparatus for testing wireless terminalscomprising: a) a switching matrix coupled through a first plurality of Mdigital front end modules to a second plurality of N radio frequency(RF) terminals, the switching matrix having channels, and including; i.M input parameter extractor modules used for parsing incoming bitstreams to obtain a transmitted power and data rate, and ii. M outputselector modules used for selecting data received by from transmittersand for digitally connecting the terminals, and b) a channel databasefor providing temporal channel attenuation data; wherein the switchingmatrix, the terminals and the channel database are interconnecteddigitally and wherein the channel attenuation data is used for settingswitching decisions.
 11. A method for testing wireless RF terminalscomprising the steps of: a) providing a dynamic RF matrix emulator whichincludes a switching matrix, a channel database and M digital frontends; b) connecting N terminals through respective digital front endsacross the switching matrix, a connection between two terminals forminga channel; c) emulating the behavior of terminals through digitalswitching of the switching matrix to set switching decisions based onchannel database entries; and d) preparing the channel database offline,by: i. using a driving simulator to provide locations of terminals and asurrounding map, ii. calculating a channel model for each channel toobtain a current database entry, the entry including an attenuationvalue, iii. quantizing the attenuation value to obtain a quantizedattenuation value, and iv. writing the quantized value to a storageelement in the channel database.
 12. The method of claim 11, wherein thestep of emulating includes providing temporally changing attenuationvalues to a channel.
 13. The method of claim 11, wherein the quantizingincludes using a maximal quantization step less than half the minimumsensitivity of a terminal PHY modem.
 14. A method for testing wirelessRF terminals comprising the steps of: a) providing a dynamic RF matrixemulator which includes a switching matrix, a channel database and Mdigital front ends; b) connecting N terminals through respective digitalfront ends across the switching matrix, a connection between twoterminals forming a channel; and c) emulating the behavior of terminalsthrough digital switching of the switching matrix to set switchingdecisions, wherein the step of emulating includes identifying terminalswith a winner transmitter and a runner up transmitter, and comparing adifference in receive powers of the winner and runner up transmitterswith a threshold to determine a switching decision.